home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 010 / games.arc / SINE.BAS (.txt) < prev    next >
Encoding:
GW-BASIC  |  1980-01-01  |  3.3 KB  |  55 lines

  1. 1000  '***********************************************************************
  2. 1010  '**            DOUBLE PRECISION SIN(X) GENERATOR                      **
  3. 1020  '***********************************************************************
  4. 1030  '** GENERATES DOUBLE PRECISION VALUES FOR SIN IN RADIANS              **
  5. 1040  '** FROM THE POWER FORMULA -                                          **
  6. 1050  '**                                                                   **
  7. 1060  '** SIN X = X - (X**3/3!) + (X**5/5!) - (X**7/7!) + (X**9/9!) - ...   **
  8. 1070  '**                                                                   **
  9. 1080  '***********************************************************************
  10. 1090  '** TWO METHODS ARE GIVEN ....                                        **
  11. 1100  '** 1. BY USE OF THE                                                  **
  12. 1110  '**    DEF FNDS#(VARIABLE#) STATEMENT                                 **
  13. 1120  '**    THIS REQUIRES THE VALUE PASSED BE IN RADIANS IN THE RANGE      **
  14. 1130  '**    0 THRU PI/2  (0 THRU 90 DEGREES) PI = 3.14159265358979323846   **
  15. 1140  '**    SIN 90 DEGREES EVALUATES OUT TO 1.00000000066278               **
  16. 1150  '** 2. BY A SERIES OF EQUATIONS TO GENERATE A VERY ACCURATE           **
  17. 1160  '**    FORM OF THE EQUATION.                                          **
  18. 1170  '**    SIN 90 DEGREES EVALUATES OUT TO 1.000000000000000              **
  19. 1180  '**    SIN 360 DEGREES EVALUATES OUT TO 0.00000031126862 APPROX       **
  20. 1190  '**    STILL VERY ACURATE FOR MOST SITUATIONS                         **
  21. 1200  '***********************************************************************
  22. 1210  '
  23. 1220  '
  24. 1230  '***********************************************************************
  25. 1240  '**                         FORM #1                                   **
  26. 1250  '***********************************************************************
  27. 1260  '
  28. 1270  DEF FNDS#(X#) = X#-X#*X#*X#/6+X#*X#*X#*X#*X#/120-X#*X#*X#*X#*X#*X#*X#/5040     +X#*X#*X#*X#*X#*X#*X#*X#*X#/362880-X#*X#*X#*X#*X#*X#*X#*X#*X#*X#*X#/           3.99168E+07+X#*X#*X#*X#*X#*X#*X#*X#*X#*X#*X#*X#*X#/6.22702E+09
  29. 1280  DEGREES# = 90
  30. 1290  VALUE# = 3.14159/180*DEGREES#
  31. 1300  A# = FNDS#(VALUE#)
  32. 1310  PRINT A#
  33. 1320  '
  34. 1330  '
  35. 1340  '***********************************************************************
  36. 1350  '**                         FORM #2                                   **
  37. 1360  '***********************************************************************
  38. 1370  '
  39. 1380  X# = 3.14159/180*DEGREES#
  40. 1390  A1# = X#
  41. 1400  A2# = A1#*X#*X#/6                          '1*2*3
  42. 1410  A3# = A2#*X#*X#/20                         '4*5
  43. 1420  A4# = A3#*X#*X#/42                         '6*7
  44. 1430  A5# = A4#*X#*X#/72                         '9*8
  45. 1440  A6# = A5#*X#*X#/110                        '10*11
  46. 1450  A7# = A6#*X#*X#/156                        '12*13
  47. 1460  A8# = A7#*X#*X#/210                        '14*15
  48. 1470  A9# = A8#*X#*X#/272                        '16*17
  49. 1480  A10# = A9#*X#*X#/342                       '18*19
  50. 1490  A11# = A10#*X#*X#/420                      '20*21
  51. 1500  A12# = A11#*X#*X#/506                      '22*23
  52. 1510  A13# = A12#*X#*X#/600                      '24*25
  53. 1520  A14# = A1#-A2#+A3#-A4#+A5#-A6#+A7#-A8#+A9#-A10#+A11#-A12#+A13#
  54. 1530  PRINT A14#
  55.